//#########################################################################
//                              WackiEngie
//           Copyright (c) 2014 Marc Wacker. All rights reserved.
//#########################################################################

#include "WeApplication.h"
#include "WeInput.h"
#include "WeVirtualInput.h"
#include "WeDebug.h"

namespace WackiEngine
{

	/*
	TODO: 
	
	1. switch from using singleton to using a globalEnvironment structure (like cryEngine) which holds all necessary global module interfaces
		(input, log, console, time, ???)
		BaseApplication could be the one that initializes that System somehow

		check cryengine, how does SGlolbalSystem initialize the modules?
		where is it saved?!

	2. Create application class that derives from base class and that manages gui etc
	3. derive from this application class and use it in the minimaldemo to create MinimalApp
	4. with this minimalapp draw a visualization of the xbox input controller states
		- you have to implement the math classes and opengl wrappers first again
	*/

	Application::Application(int32 width, int32 height, const String& title)
		: BaseApplication(width, height, title)
	{
		VirtualInput::startUp();
	}


	void Application::update()
	{ 
		gVirtualInput().update();
	}

}